package com.mida.dms.knw.mapper;

import com.mida.dms.knw.entity.KnwCompositeInstance;
import com.mida.dms.knw.entity.vo.KnwCompositeInstanceDto;
import com.mida.dms.knw.vo.KnwCompositeInstanceVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface KnwCompositeInstanceMapper {
    int deleteByPrimaryKey(Long compositeInstanceSoid);

    int insert(KnwCompositeInstance record);

    int insertSelective(KnwCompositeInstance record);

    KnwCompositeInstance selectByPrimaryKey(Long compositeInstanceSoid);

    int updateByPrimaryKeySelective(KnwCompositeInstance record);

    int updateByPrimaryKey(KnwCompositeInstance record);

    int getPageCount(Map<String, Object> mapParm);

    List<KnwCompositeInstanceDto> getKnwCompositeInstancePage(Map<String, Object> mapParm);

    Integer getMaxSerialNo(Long commonWordsTreeSoid);

    int updateSoid(@Param("instanceVos") List<KnwCompositeInstanceVo> instanceVos);

    List<KnwCompositeInstanceDto> getKnwCompositeInstanceList(Map<String, Object> mapParm);

    void updateKnwCompositeInstance(@Param("compositeInstanceSoids") List<Long> compositeInstanceSoids, @Param("commonWordsTreeSoid") Long commonWordsTreeSoid,@Param("status")Long status);

    int count(Long surperCommonWordsTreeSoid);

    List<KnwCompositeInstanceDto> search(@Param("queryName") String queryName, @Param("creator") Long creator);
}